// 需求：先读取 a 文件，然后再读取 b 文件，最后再读取 c 文件

// 3. Async / Await

const fs = require("fs");

function readFile(filePath, ms) {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            fs.readFile(filePath, "utf-8", (err, data) => {
                if (err) {
                    // console.log(err);
                    reject(err);
                } else {
                    // console.log(data);
                    resolve(data);
                }
            });
        }, ms);
    });
}

async function foo() {
    // 先读取 a 文件
    const resA = await readFile("./a.txt", 1000);
    console.log(resA);
    // 再读取 b 文件
    const resB = await readFile("./b.txt", 800);
    console.log(resB);
    // 最后读取 c 文件
    const resC = await readFile("./c.txt", 500);
    console.log(resC);
}

foo();
